﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using KC.Model.Storage.Base;

namespace KC.Model.Storage.Table
{
    /// <summary>
    /// 与Web站点下Web.Release.config下NLog配置TableName的配置保存一致
    /// </summary>
    public enum NLogTableType
    {
        [Description("后台管理系统")]
        SaasSsoLogTable = 0,
        [Description("客户跟踪系统")]
        SaasCrmLogTable = 1,
        [Description("电商系统")]
        SaasShopLogTable = 2,
        [Description("融资系统")]
        SaasMarketLogTable = 3,
        [Description("ERP系统")]
        SaasErpLogTable = 4,
        [Description("工作流系统")]
        SaasWorkflowLogTable = 5,
        [Description("微信服务")]
        SaasWeixinLogTable = 6,
        [Description("WebApi服务")]
        SaasWebApiLogTable = 8,
        [Description("WorkRole服务")]
        SaasWorkroleLogTable = 7,
    }

    public class NLogEntity : AzureTableEntity
    {
        public string Exception { get; set; }
        public string ExceptionData { get; set; }
        public string InnerException { get; set; }
        public string Level { get; set; }
        public string LoggerName { get; set; }
        public string LogTimeStamp { get; set; }
        public string MachineName { get; set; }
        public string Message { get; set; }
        public string MessageWithLayout { get; set; }
        public string StackTrace { get; set; }
    }
}
